/*
 * IngresoDeNombre.h
 *
 *  Created on: 03/07/2014
 *      Author: loreyalan
 */

#ifndef INGRESODENOMBRE_H_
#define INGRESODENOMBRE_H_

#include "SDL/SDL.h"
#include "SDL/SDL_image.h"
#include "SDL/SDL_ttf.h"
#include <string>

using namespace std;

//Screen attributes
const int SCREEN_WIDTH = 800;
const int SCREEN_HEIGHT = 600;
const int SCREEN_BPP = 16;


class IngresoDeNombre {
private:
    //The storage string
    std::string str;

    /* Pantalla donde incrustar el texto */
    SDL_Surface *screen;

    /* Manejador de eventos de teclado */
    SDL_Event *event;

    /* Color de las letras a pintar */
    SDL_Color *textColor;

    //The text surface
    SDL_Surface *text;

    /* Fuente */
    TTF_Font *font;

    public:
    //Initializes variables
    IngresoDeNombre(SDL_Surface *screen, SDL_Event *event, SDL_Color *textColor, TTF_Font *font);

    //Does clean up
    ~IngresoDeNombre();

public:
	IngresoDeNombre();
	void getNombre(char *destino);
	void apply_surface( int x, int y, SDL_Surface* source, SDL_Surface* destination, SDL_Rect* clip);
    //Handles input
    bool handle_input();
    //Shows the message on screen
    void show_centered();
};

#endif /* INGRESODENOMBRE_H_ */
